package edu.osumc.bmi.soap.endpoint;

import edu.osumc.bmi.soap.schema.AddUserRequest;
import edu.osumc.bmi.soap.schema.DeleteUserRequest;
import edu.osumc.bmi.soap.schema.GetAllUsersRequest;
import edu.osumc.bmi.soap.schema.GetAllUsersResponse;
import edu.osumc.bmi.soap.schema.GetUserRequest;
import edu.osumc.bmi.soap.schema.GetUserResponse;
import edu.osumc.bmi.soap.schema.UpdateUserRequest;
import edu.osumc.bmi.soap.util.SoapException;

public interface UserEndpoint {
	String ADD_USER_REQUEST = "AddUserRequest";
	String DELETE_USER_REQUEST = "DeleteUserRequest";
	String GET_ALL_USERS_REQUEST = "GetAllUsersRequest";
	String GET_USER_REQUEST = "GetUserRequest";
	String UPDATE_USER_REQUEST = "UpdateUserRequest";

	public void addUser(AddUserRequest request) throws SoapException;

	public void deleteUser(DeleteUserRequest request) throws SoapException;

	public GetAllUsersResponse getAllUsers(GetAllUsersRequest request);

	public GetUserResponse getUser(GetUserRequest request) throws SoapException;

	public void updateUser(UpdateUserRequest request) throws SoapException;
}
